home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Graphics Plus
/
Graphics Plus.iso
/
general
/
modelers
/
geomview
/
source.lha
/
Geomview
/
tools
/
install.bsd
< prev
next >
Wrap
Text File
|
1993-11-04
|
2KB
|
76 lines
#! /bin/sh
#
# SGI install emulator for Suns
# Note, uses cp -p option.
#
mode=755
owner=:
group=:
new=-p
verb=:
dir=
src=
Toss() { rm -f "$1"; }
Usage=\
"Usage: $0 [-m mode] [-u owner] [-g group] [-new] [-o] [-O] [-v]
[-F dir] file ...
Emulates SGI install -- installs file(s) in given directories."
if [ "$#" = 0 ]; then
echo "$Usage" >&2
exit 1
fi
while
case "$1" in
-m) mode=$2; shift 2 ;;
-u) owner="chmod $2"; shift 2 ;;
-g) group="chgrp $2"; shift 2 ;;
-new) new= ; shift ;;
-o) Toss() { mv "$1" "$2"; }; shift ;;
-O) Toss() { rm -f "$1" || mv -f "$1" "$2"; } ; shift ;;
-v) verb=echo ; shift ;;
-root) ROOT="$2"; shift ;;
-f) dir="$2"; shift 2 ;;
-F) dir="$2"; mkem=1; shift 2 ;;
-*) echo "$Usage" >&2; exit 1 ;;
*) test ;;
esac
do
:
done
echo "Installing $@"
if [ "$dir" = "" ]; then
echo "install: needs -f or -F option to specify destination dir" >&2
exit 1
fi
if [ "$mkem" != "" -a ! -d "$dir" ]; then
# Make all necessary directories.
Ds="$dir"
D="$dir"
while
D=`expr "$D//" : "\(.*\)/[^/]*//"`
test ! -d "$D"
do
Ds="$D $Ds"
done
mkdir $Ds
fi
if [ "$ROOT" != "" ]; then dir="$ROOT/$dir"; fi
for f in $@; do
g=`expr "//$f" : ".*/\([^/]*\)"`
test -f "$dir/$g" && Toss "$dir/$g" "$dir/OLD$g"
cp ${new} "$f" "$dir/$g"
chmod ${mode} "$dir/$g"
${owner} "$dir/$g"
${group} "$dir/$g"
$verb "$f installed as $dir/$g"
done